package com.zjb.demo.system.mapper;

import com.mybatisflex.core.BaseMapper;
import com.mybatisflex.core.query.QueryWrapper;
import com.zjb.demo.system.domain.SysUserPost;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

import static com.zjb.demo.system.domain.table.SysUserPostTableDef.SYS_USER_POST;

/**
 * @author 庄佳彬
 * @since 2024/1/3 00:03
 */
@Mapper
public interface SysUserPostMapper extends BaseMapper<SysUserPost> {
    /**
     * 通过用户ID删除用户帖子关系
     *
     * @param userId 用户ID
     * @return 删除结果，返回true表示删除成功，返回false表示删除失败
     */
    default boolean deleteByUserId(Long userId) {
        var query = QueryWrapper.create()
                .where(SYS_USER_POST.USER_ID.eq(userId));
        return deleteByQuery(query) > 0;
    }


    /**
     * 通过用户ID列表删除用户帖子关系
     *
     * @param id 用户ID列表
     * @return 删除结果，返回true表示删除成功，返回false表示删除失败
     */
    default boolean deleteByUserIds(List<Long> id){
        var query = QueryWrapper.create()
                .where(SYS_USER_POST.USER_ID.in(id));
        return deleteByQuery(query) > 0;
    }

}
